package com.dao;

import com.entity.GongyipinfenleiEntity;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import java.util.List;
import java.util.Map;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.pagination.Pagination;

import org.apache.ibatis.annotations.Param;
import com.entity.vo.GongyipinfenleiVO;
import com.entity.view.GongyipinfenleiView;


/**
 * 工艺品分类数据访问接口
 * 继承自 MyBatis Plus 的 BaseMapper，提供基本的 CRUD 操作
 * 该接口用于处理与工艺品分类相关的数据库操作
 *
 * author: team10
 */
public interface GongyipinfenleiDao extends BaseMapper<GongyipinfenleiEntity> {

	/**
	 * 查询符合条件的工艺品分类列表 (VO)
	 *
	 * @param wrapper 查询条件
	 * @return 工艺品分类的 VO 列表
	 */
	List<GongyipinfenleiVO> selectListVO(@Param("ew") Wrapper<GongyipinfenleiEntity> wrapper);

	/**
	 * 查询符合条件的单条工艺品分类 (VO)
	 *
	 * @param wrapper 查询条件
	 * @return 单条工艺品分类的 VO
	 */
	GongyipinfenleiVO selectVO(@Param("ew") Wrapper<GongyipinfenleiEntity> wrapper);

	/**
	 * 查询符合条件的工艺品分类列表 (View)
	 *
	 * @param wrapper 查询条件
	 * @return 工艺品分类的 View 列表
	 */
	List<GongyipinfenleiView> selectListView(@Param("ew") Wrapper<GongyipinfenleiEntity> wrapper);

	/**
	 * 查询符合条件的分页工艺品分类列表 (View)
	 *
	 * @param page 分页参数
	 * @param wrapper 查询条件
	 * @return 分页的工艺品分类 View 列表
	 */
	List<GongyipinfenleiView> selectListView(Pagination page, @Param("ew") Wrapper<GongyipinfenleiEntity> wrapper);

	/**
	 * 查询符合条件的单条工艺品分类 (View)
	 *
	 * @param wrapper 查询条件
	 * @return 单条工艺品分类的 View
	 */
	GongyipinfenleiView selectView(@Param("ew") Wrapper<GongyipinfenleiEntity> wrapper);
}
